package com.byzk.p2p.admin.user.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.byzk.p2p.admin.user.dto.AuthRecord;
import com.byzk.p2p.admin.user.dto.UserAuth;
import com.byzk.p2p.admin.user.dto.UserDetailInfoAuth;
import com.byzk.p2p.admin.user.dto.UserWorkInfoAuth;

public interface UserAuthDao {
	
	public Integer countByStatus(UserAuth vo);

	public List<UserAuth> listUserAuth(UserAuth vo);
	
	public UserAuth getUserAuthById(Integer id);
	
	public Integer insert(UserAuth entity);

	public Integer update(UserAuth entity);
	
	public UserAuth getAuthByUidAndType(@Param("uid")Integer uid,@Param("type")String type);
	
	public Integer insertUserDetailInfoAuth(UserDetailInfoAuth userDetailInfoAuth);
	
	public Integer insertUserWorkInfoAuth(UserWorkInfoAuth userWorkInfoAuth);
	
	public Integer updateUserDetailInfoAuth(UserDetailInfoAuth userDetailInfoAuth);
	
	public Integer updateUserWorkInfoAuth(UserWorkInfoAuth userWorkInfoAuth);
	
	public UserDetailInfoAuth getUserDetailInfoAuthByUserId(Integer userId);
	
	public UserWorkInfoAuth getUserWorkInfoAuthByUserId(Integer userId);
	
	public UserAuth getUserAuthByIdCard(@Param("idCard") String idCard);
	
	public Integer deleteByUserId(Integer userId);
	
	public Integer insertRecord(AuthRecord record);

	public Integer updateRecord(AuthRecord record);

	public List<AuthRecord> selectByDate(@Param("userId")Integer userId, @Param("date")String date);
}
